Robotic cleaning devices, associated systems, and methods of using the same

ABSTRACT

A robotic cleaning device, along with associated systems and methods of using the same, is described. The device may include a body portion that may define a top surface, a bottom surface, and a continuous sidewall surface. An example device may further include a drive system that propels the robotic device. An example device may further include two or more bottom brushes. An example device may further include a continuous opening that translates around the sidewall surface. An example device may further include a pair of sidewall brushes that may oscillate along the opening.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a U.S. Nonprovisional Application and claims priority to U.S. Provisional Application No. 63/344,185 filed on May 20, 2022, the contents of which are hereby incorporated by reference in their entirety.

BACKGROUND Related Field

The present disclosure relates to a robotic device capable of engaging with a cleaning environment (e.g., bathtub, shower, etc.) to allow for easier cleaning of the bottom surface and at least one sidewall.

Related Art

Robotic device may be used to clean a surface in various situations. Exemplary known cleaning robotic systems may include a cleaning device configured to engage one or more surfaces. Generally, though, these known robotic devices focus one engaging the one or more surfaces via features located on only one surface (e.g., a bottom surface) thereof. Such conventional systems thus do not provide a manner for cleaning one or more differently oriented surfaces in a simultaneous manner, let alone doing so with feature positioned on a single surface. Thus, a need exists for improved robotic devices providing enhanced coverage and performance.

BRIEF SUMMARY

Various embodiments of the present disclosure describe and comprise robotic devices, cleaning apparatuses, mobile devices, and corresponding systems, devices, components, and methods related to robotic devices.

For example, in certain embodiments, a robotic device for cleaning a surrounding environment is provided. In these embodiments, the robotic device may include a body portion that may define at least a top surface, a bottom surface, and/or a continuous sidewall surface. In these and/or other embodiments, the sidewall surface may be defined by a perimeter of the body portion. In these and/or other embodiments, the robotic device may further comprise a drive system that includes at least two drive elements configured to propel the robotic device within the surrounding environment. In these and/or other embodiments, the at least two drive elements may extend a distance beneath the bottom surface. In these and/or other embodiments, the robotic device may further comprise two or more bottom brushes having a primary axis of each brush that extends below the bottom surface and extends at least partially beyond the at least two drive elements to engage the surrounding environment. In these and/or other embodiments, the robotic device may further comprise a continuous opening that translates around the sidewall surface. In these and/or other embodiments, the robotic device may further comprise a pair of sidewall brushes that extend from the robotic device. In these and/or other embodiments, the pair of sidewall brushes sidewall brushes may be configured to oscillate along the continuous opening until making contact with each other.

In various embodiments, the robotic device may further comprise a storage compartment. In certain embodiments, the storage compartment may store the pair of sidewall brushes and may be defined between the top surface and the bottom surface at an end of the robotic device. In some embodiments, the pair of sidewall brushes may translate from a stored position to an active position, relative to the storage compartment, upon an activation of a cycle. In some embodiments, the pair of sidewall brushes may be positioned in a vertical manner relative to the storage compartment while in the active position.

In various embodiments, the pair of sidewall brushes may oscillate horizontally relative to the continuous opening of the robotic device. In some embodiments, the pair of sidewall brushes may oscillate individually from each other from a first linear position to a second linear position along the continuous opening. In some embodiments, a first sidewall brush may oscillate along a first side of the robotic device, and a second sidewall brush may oscillate along a second side of the robotic device, wherein the first side and the second side are relative to the sidewall surface. In some embodiments, the first linear position may be defined by the storage compartment at a first end of the robotic device. In some embodiments, the second linear position may be defined by the linearly opposite end of the robotic device relative to the storage compartment.

In various embodiments, the robotic device may further comprise a bumper. In certain embodiments, the bumper may extend around the body portion to protect a finish of the surrounding environment.

In various embodiments, the robotic device may further comprise a controller and at least one sensor. In certain embodiments, the controller and the at least one sensor may be configured to detect a location of the robotic device within the surrounding environment and communicate the location to guide the robotic device. In some embodiments, the controller may further comprise a processor. In at least one embodiments, the processor may be configured to communicate with the controller to direct the robotic device. In these and/or other embodiments, the controller, directed by the processor, may control at least one oscillating function of the pair of sidewall brushes. In some embodiments, the controller may further comprise a communication element that communicates with at least one electronic device.

In various embodiments, the robotic device may further comprise at least one power switch. In certain embodiments, the at least one power switch activates the robotic device and/or selects a cycle type.

For example, in certain embodiments, a robotic system for cleaning a surrounding environment is provided. In these embodiments, the robotic system may include a robotic device. In some embodiments, the robotic device may include a body portion that may define at least a top surface, a bottom surface, and/or a continuous sidewall surface. In these and/or other embodiments, the sidewall surface may be defined by a perimeter of the body portion. In these and/or other embodiments, the robotic device may further comprise a drive system that includes at least two drive elements configured to propel the robotic device within the surrounding environment. In these and/or other embodiments, the at least two drive elements may extend a distance beneath the bottom surface. In these and/or other embodiments, the robotic device may further comprise two or more bottom brushes having a primary axis of each brush that extends below the bottom surface and extends at least partially beyond the at least two drive elements to engage the surrounding environment. In these and/or other embodiments, the robotic device may further comprise a continuous opening that translates around the sidewall surface. In these and/or other embodiments, the robotic device may further comprise a pair of sidewall brushes that extend from the robotic device. In these and/or other embodiments, the pair of sidewall brushes sidewall brushes may be configured to oscillate along the continuous opening until making contact with each other. In these and/or other embodiments, the robotic system may further comprise a distributed network that may communicate with one or more electronic devices and with the robotic system.

For example, in certain embodiments, a method of operating a robotic device is provided. In these embodiments, the method may include selective, via a power switch, a power type and/or a cycle type. In these and/or other embodiments, the method may further comprise causing an activation of a cycle for the robotic device to begin cleaning a surrounding environment. In these and/or other embodiments, the robotic device may comprise a body portion that may define at least a top surface, a bottom surface, and/or a continuous sidewall surface. In these and/or other embodiments, the sidewall surface may be defined by a perimeter of the body portion. In these and/or other embodiments, the robotic device may further comprise a drive system that includes at least two drive elements configured to propel the robotic device within the surrounding environment. In these and/or other embodiments, the at least two drive elements may extend a distance beneath the bottom surface. In these and/or other embodiments, the robotic device may further comprise two or more bottom brushes having a primary axis of each brush that extends below the bottom surface and extends at least partially beyond the at least two drive elements to engage the surrounding environment. In these and/or other embodiments, the robotic device may further comprise a continuous opening that translates around the sidewall surface. In these and/or other embodiments, the robotic device may further comprise a pair of sidewall brushes that extend from the robotic device. In these and/or other embodiments, the pair of sidewall brushes sidewall brushes may be configured to oscillate along the continuous opening until making contact with each other. In these and/or other embodiments, the robotic device may further comprise at least one power switch that may activate the robotic device and/or select a cycle type.

In various embodiments, the cycle type may define the running time of the robotic device and the cleaning type. In some embodiments, the depressing of the at least one power switches a predetermined number of time selects at least one cycles. In some embodiments, the selecting of different cycles and/or run times may be based on the number of depressions of the power switch.

The above summary is provided merely for purposes of summarizing some example embodiments to provide a basic understanding of some aspects of the present disclosure. Accordingly, it will be appreciated that the above-described embodiments are merely examples and should not be construed to narrow the scope or spirit of the present disclosure in any way. It will be appreciated that the scope of the present disclosure encompasses may potential embodiments in addition to those here summarized, some of which will be further described below. Other features, aspects, and advantages of the subject matter will become apparent from the description, the drawings, and the claims.

BRIEF DESCRIPTION OF THE DRAWINGS

The following drawings are illustrations of a particular embodiment of the present disclosure and therefore do not limit the scope of the present disclosure. The drawings are not necessarily drawn to scale and are intended for use in conjunction with explanation in the following description.

FIG. 1A illustrates an exemplary top view of a robotic device in accordance with various embodiments of the present disclosure;

FIG. 1B illustrates an exemplary left side view of a robotic device with a brush in a first position in accordance with various embodiments of the present disclosure;

FIG. 1C illustrates an exemplary right side view of a robotic device with a brush in a second position in accordance with various embodiments of the present disclosure;

FIG. 1D illustrates an exemplary front view of a robotic device in accordance with various embodiments of the present disclosure;

FIG. 1E illustrates an exemplary bottom view of a robotic device in accordance with various embodiments of the present disclosure;

FIG. 2 illustrates an exemplary perspective view of a drive system in accordance with various embodiments of the present disclosure;

FIG. 3A illustrates an exemplary side view of a set of brushes engaging an exemplary cleaning surface in accordance with various embodiments of the present disclosure;

FIG. 3B illustrates an exemplary exploded view of a rotating mechanism for the set of brushes of FIG. 3A, in accordance with various embodiments of the present disclosure;

FIG. 4 illustrates an exemplary schematic of a controller in accordance with various embodiments of the present disclosure;

FIG. 5 illustrates an exemplary schematic of a mobile device for use with various embodiments of the present disclosure;

FIG. 6 illustrates an exemplary schematic of a communication network in accordance with various embodiments of the present disclosure; and

FIG. 7 illustrates an exemplary flowchart of a method to begin a cycle in accordance with various embodiments of the present disclosure.

DETAILED DESCRIPTION

Various embodiments of the present invention will be described in a more detailed manner hereinafter with reference to the accompanying drawings, in which some, embodiments of the invention are shown. Reference numbers refer to like elements throughout the drawings. Multiple embodiments of the current invention may be embodied in different forms and should not be limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will satisfy applicable legal requirements.

As used herein, terms such as “front,” “rear,” “top,” etc. are used for explanatory purposes in the examples provided below to describe the relative positions of certain components or portions of components. As used herein, the term “or” is used in both the alternative and conjunctive sense, unless otherwise indicated. The term “along,” and similarly utilized terms, means near or on, but not necessarily requiring directly on an edge or other referenced location. The terms “approximately,” “generally,” and “substantially” refer to within manufacturing and/or engineering design tolerances for the corresponding materials and/or elements unless otherwise indicated. The use of such terms is inclusive of and is intended to allow independent claiming of specific values listed. Thus, use of any such aforementioned terms, or similarly interchangeable terms, should not be taken to limit the spirit and scope of embodiments of the present invention. As used in the specification and the appended claims, the singular form of “a,” “an,” and “the” include plural references unless otherwise stated. The terms “includes” and/or “including,” when used in the specification, specify the presence of stated feature, elements, and/or components; it does not preclude the presence or addition of one or more other features, steps, operations, elements, components, and/or groups thereof.

As used herein, the phrases “in one embodiment,” “according to one embodiment,” “in some embodiments,” and the like generally refer to the fact that the particular feature, structure, or characteristic following the phrase may be included in at least one embodiment of the present disclosure. Thus, the particular feature, structure, or characteristic may be included in more than one embodiment of the present disclosure such that these phrases do not necessarily refer to the same embodiment. As used herein, the terms “example,” “exemplary,” and the like are used to “serving as an example, instance, or illustration.” Any implementation, aspect, or design described herein as “example” or “exemplary” is not necessarily to be construed as preferred or advantageous over other implementations, aspects, or designs. Rather, use of the terms “example,” “exemplary,” and the like are intended to present concepts in a concrete fashion.

As used herein, the term “battery-powered” is intended to refer to devices capable of engaging a battery to receive electrical power (e.g., wall outlet, or the like) in at least some circumstances. The term “battery-powered” is intended to be interpreted inclusively and includes devices capable of engaging a battery as well as devices capable of being plugged in to a non-battery power source in at least some circumstances.

Aspects of the present disclosure may be implemented as computer program products that comprises articles of manufacture. Such computer program products may include one or more software components including, for example, applications, software objects, methods, data structure, and/or the like. A software component may be coded in any of a variety of programming languages. An illustrative programming language may be a lower-level programming language such as an assembly language associated with a particular hardware architecture and/or operating system platform/system.

Other example of programming languages included, but are not limited to, a macro language, a shell or command language, a job control language, a script language, a database query, or search language, and/or report writing language. In one or more example embodiments, a software component comprising of instructions in one of the foregoing examples of programming languages may be executed directly by an operating system or other software component without having to be first transformed into another form. A software component may be stored as a file or other data storage methods. Software components of a similar type or functionally related may be stored together such as, for example, in a particular directory, folder, or library. Software components may be static (e.g., pre-established, or fixed) or dynamic (e.g., created or modified at the time of execution).

Additionally, or alternatively, aspects of the present disclosure may be implemented as a non-transitory computer-readable storage medium storing applications, programs, program modules, scripts, source code, program code, object code, byte code, compiled code, interpreted code, machine code, executable instructions, and/or the like (also referred to herein as executable instructions, instructions for execution, computer program products, program code, and/or similar terms used herein interchangeably). Such non-transitory computer-readable storage media may include all computer-readable media (including volatile and non-volatile media).

In one aspect, a non-volatile readable storage may include a floppy disk, flexible disk, hard disk, solid-state storage (SSS) (e.g., a solid-state drive (SSD), solid state card (SSC), solid state module (SSM), enterprise flash drive, magnetic tape, and/or the like. A non-volatile computer-readable storage medium may also include compact disc read only memory (CD-ROM), compact disc-rewritable (CD-RW), digital versatile disc (DVD), Blu-ray disc (BD), any other non-transitory optical medium, and/or the like. Such a non-volatile computer-readable storage medium may also include read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), flash memory (e.g., Serial, NAND, NOR, and/or the like), multimedia memory cards (MMC), secure digital (SD) memory cards, SmartMedia cards, CompactFlash (CF) cards, Memory Sticks, and/or the like. Further, a non-volatile computer-readable storage medium may also include conductive-bridging random access memory (CBRAM), phase-change random access memory (PRAM), ferroelectric random-access memory (FeRAM), non-volatile random-access memory (NVRAM), magnetoresistive random-access memory (MRAM), resistive random-access memory (RRAM), Silicon-Oxide-Nitride-Oxide-Silicon memory (SONOS), floating junction gate random access memory (FJG RAM), Millipede memory, racetrack memory, and/or the like.

In one aspect, a volatile computer-readable storage medium may include random access memory (RAM), dynamic random access memory (DRAM), static random access memory (SRAM), fast page mode dynamic random access memory (FPM DRAM), extended data-out dynamic random access memory (EDO DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDR SDRAM), double data rate type two synchronous dynamic random access memory (DDR2 SDRAM), double data rate type three synchronous dynamic random access memory (DDR3 SDRAM), Rambus dynamic random access memory (RDRAM), Twin Transistor RAM (TTRAM), Thyristor RAM (T-RAM), Zero-capacitor (Z-RAM), Rambus in-line memory module (RIMM), dual in-line memory module (DIMM), single in-line memory module (SIMM), video random access memory (VRAM), cache memory (including various levels), flash memory, register memory, and/or the like. It will be appreciated that where aspects are described to use a computer-readable storage medium, other types of computer-readable storage media may be substituted for or used in addition to the computer-readable storage media described above.

Aspects of the present disclosure are described below with reference to block diagrams and flowchart illustrations. Thus, it should be understood that each block of the block diagrams and flowchart illustrations may be implemented in the form of a computer program product, a solely hardware aspect, a combination of hardware and computer program products, and/or apparatus, systems, computing devices, computing entities, and/or the like carrying out instructions, operations, steps, and similar words used interchangeably (e.g., the executable instructions, instructions for execution, program code, and/or the like) on a computer-readable storage medium for execution. For example, retrieval, loading, and execution of code may be performed sequentially such that one instruction is retrieved, loaded, and executed at a time. In some embodiments, retrieval, loading, and/or execution may be performed in parallel such that multiple instructions are retrieved, loaded, and/or executed together. Thus, such aspects can produce specifically configured machines performing the steps or operations specified in the block diagrams and flowchart illustrations. Accordingly, the block diagrams and flowchart illustrations support various combinations of aspects for performing the specified instructions, operations, or steps.

As should be appreciated, various aspects of the present disclosure may also be implemented as methods, apparatuses, systems, computing devices, computing entities, and/or the like. As such, aspects of the present disclosure may take the form of a data structure, apparatus, system, computing device, computing entity, and/or the like executing instructions stored on a computer-readable storage medium to perform certain steps or operations. Thus, aspects of the present disclosure may also take the form of an entirely hardware aspect, an entirely computer program product aspect, and/or an aspect that comprises combination of computer program products and hardware performing certain steps or operations.

The figures are provided to illustrate some examples of the invention described. The figures are not to limit the scope of the present embodiment of the invention or the appended claims. Aspects of the example embodiment are described below with reference to example applications for illustration. It should be understood that specific details, relationships, and methods are set forth to provide a full understanding of the example embodiment. One of ordinary skill in the art recognize the example embodiment can be practice without one or more specific details and/or with other methods.

The present disclosure relates to a robotic device capable of cleaning a bathtub and/or shower to allow for an ergonomic cleaning function for users who may be handicapped, lost use of upper body strength, elderly users, etc. Various devices and methods are also provided. In some example embodiments, the robotic device disclosed herein may be used to clean a plurality of surfaces of a bathtub and/or shower. In various embodiments, the robotic device may comprise a driving mechanism and a cleaning mechanism. The driving mechanism may be configured to translate the robotic device throughout the cleaning environment (e.g., bathtub, shower, etc.). Typical robotic devices are configured to only clean a bottom surface within the cleaning environment. This requires users, in the case of the cleaning environment being a bathtub and/or shower, to still manually clean one or more additional surfaces manually. The present disclosure solves these problems and other via the robotic device disclosed herein.

In some instances, various robotic devices clean a plurality of surfaces simultaneously within a surrounding environment. The robotic device according to various embodiments of the present disclosure may be able to engage with and/or clean a plurality of cleaning surfaces simultaneously. For example, the robotic device may be configured to deploy one or more sidewall brushes upon the activation of a cleaning cycle. The one or more sidewall brushes may be configured to engage with at least one sidewall of the cleaning environment while one or more bottom brushes of the robotic device engages the bottom surface of the cleaning environment.

As described herein, the invention includes a robotic device that utilizes at least one sidewall brush and at least one bottom brush to allow for easy cleaning of a surrounding environment (e.g., bathtub, shower, bathroom, kitchen, etc.).

FIG. 1A illustrates a top view of an exemplary robotic device 10 in accordance with various embodiments of the present disclosure. In various embodiments, an exemplary robotic device 10 may comprise a body portion 102, a bumper 104, at least one connection rod 202A, 202B (collectively ‘202’), and/or at least one side wall brush 204A, 204B (collectively ‘204’). The body portion 102 may define at least a top surface, a bottom surface, and/or a continuous sidewall surface, wherein the continuous sidewall surface is defined between the top surface and the bottom surface. In various embodiments, as illustrated in FIG. 1A, an exemplary robotic device 10 may be configured for cleaning a surrounding environment (e.g., a bath, a shower, etc.) with the assistance of two or more sidewall brushes 204 that are configured to engage opposite sidewalls of a bathtub and/or shower. In various embodiments, a first sidewall brush 204A may be configured to secure to a first connection rod 202A and/or a second sidewall brush 204B may be configured to secure to a second connection rod 202B. The first sidewall brush 204A may be disposed linearly opposite of the second sidewall brush 204B, such that, the first sidewall brush 204A engages with a first sidewall of a tub and the second sidewall brush 204B engages with a second sidewall of a tub either simultaneously and/or individually. The first sidewall brush 204A and/or the second sidewall brush 204B may comprise a half-circle shape. In various embodiments, the sidewall brushes 204 may extend vertically up to 18 inches tall. In other embodiments, the first sidewall brush and/or the second sidewall brush may comprise any shape suitable to complete a cleaning operation (e.g., circular, triangular, square, rectangular, etc.).

In various embodiments, the sidewall brushes 204 may comprise a plurality of bristles that may contact the sidewall surfaces of the surrounding environment (e.g., tub and/or shower). In various embodiments, the plurality of bristles may be flexible and/or are configured to bend at least in part upon rotation. In other embodiments, the bristles of the sidewall brushes may be rope like, such that, the bristles easily conform to the sidewall surface of the surrounding environment. In various embodiments, the plurality of bristles may be configured to receive cleaning solution and/or water from the corresponding reservoirs, wherein the plurality of bristles may be configured deliver the cleaning solution and/or water to the sidewalls of the bathtub and/or shower.

In various embodiment, the sidewall brushes oscillate horizontally along an open, described in detail herein after, with the assistance of rotating and/or oscillating mechanism. The sidewall brushes may oscillate horizontally relative to the sidewall surface of the robotic device. In various embodiments, the sidewall brushes may rotate simultaneously while oscillating along the opening. In other embodiments, the sidewall brushes may rotate while at a first linear position and/or at a second linear position.

With further reference to FIG. 1A, in various embodiments, the robotic device 10 may further comprise at least one door 106. The at least one door 106 may be configured to open and close via one or more hinges allowing a user to access the inside of the robotic device 10. In various embodiments, the at least one door 106 may allow a user to access a removable battery, a removable water reservoir, a removable cleaning solution reservoir, and/or the like. In various embodiments, the at least one door 106 may be configured to be the whole top surface of the robotic device 10, such that, the user may remove the whole top surface of the body portion 102. While in other embodiments, the door 106 may be configured to be just a portion of the top surface of the robotic device 10. In one or more example embodiments, the body portion 102 may further comprise a bumper 104 configured to prevent the robotic device 10 from scratching one or more surfaces of the cleaning environment. The bumper 104 may comprise a rubber like material, wherein the rubber like material may be clear, white, and/or the like.

FIGS. 1A-1C depict exemplary views of a robotic device in accordance with various embodiments of the present disclosure. The robotic device 10 may comprise at least one sidewall brush 204 may be configured to extend laterally from the body portion of the robotic device. The one or more sidewall brushes 204, while in a deployed position, may be configured to oscillate horizontally along the sidewall surface of the robotic device from a first position to a second position. In various embodiments, the one or more sidewall brushes 204 may be configured to translate from the first position (e.g., back of the robotic device 102B) to the second position (e.g., front of the robotic device 102A). The one or more sidewall brushes 204 may be configured to oscillate along an opening 203 (depicted in FIGS. 1B-1C) located along the sidewall surface of the robotic device, wherein the oscillation function is described hereinafter in detail. The opening is defined along the sidewall surface of the body portion, wherein the opening 203 is disposed vertically between the top surface and the bottom surface of the robotic device. The opening 203 may translate horizontally along the sidewall surface of the body portion of the robotic device, such that, the opening 203 translates around at least half of the body portion. In other embodiment, the opening 203 may translate horizontally along the sidewall surface, such that, the opening translates the body portion fully. In various embodiments, a first sidewall brush may be configured to oscillate simultaneously with a second sidewall brush. The first sidewall brush and the second sidewall brush may contact each other while in the first position and/or in the second position. In other embodiments, the first sidewall brush may be configured to oscillate in an alternate configuration with the second sidewall brush.

With further reference to FIGS. 1A-1C, in various embodiments, the robotic device 10 may be further comprise at least one battery charging plug-in 103A and/or at least one power switch 103B. The at least one battery charging plug-in 103A and the at least one power switch 103B may further comprise a waterproof seal preventing liquid from entering the port. In various embodiments, a user may be configured to charge the robotic device by connecting the at least one battery charging plug-in to an electrical connection. In other embodiments, a user may begin a cleaning cycle of the robotic device by depressing the power switch 103B a predetermined number of times. Different number of depressions of the power switch result in the selection of different cycles and/or run times. In various embodiments, the one or more sidewall brushes 204 may be configured to begin oscillating back and forth from the first position to the second position when a user activates a cycle. The cycle may be activated by a user engagement with the power switch 103B and/or may be activated via a user's wireless device. The first sidewall brush 204A and the second sidewall brush 204B may oscillate simultaneously (e.g., at the same rate), wherein both sidewall brushes 204 may start from the first position and end at the second position. In further embodiments, the first sidewall brush 204A and/or the second sidewall brush 204B may oscillate from the first position to the second position and repeat the pattern a plurality of times, wherein the plurality of times may be based on at least in part a timer, a cycle, a rotation rate, and/or the like.

With further reference to FIGS. 1A-1C, in various embodiments, the sidewall surface may further comprise one or more storage compartments 150. The storage compartment may be defined by an opening along the continuous sidewall surface. The storage compartment 150 may be disposed at a first end of the robotic device and further comprise at least one door. The door may open by any means necessary (e.g., hinges, springs, pistons, etc.) to allow the sidewall brushes to be stored. The storage compartment 150 may be configured to store the one or more sidewall brushes. The storage compartment 150 may automatically open upon the activation of one or more cycles and/or close upon completion the cycle. In various embodiments, the storage compartment 150 may be configured to open upon the activation of one or more cleaning cycles, wherein the one or more sidewall brushes are configured to extend vertically upon the activation of one or more cleaning cycles for the robotic device.

With still further reference to FIG. 1B-1C, the at least one side wall brush 204 may be configured to oscillate from a stored position to an active position upon the activation of one or more cleaning cycles. The first sidewall cleaning brush 204A and/or the second sidewall cleaning brush 204B may be stored within the robot device in a storage compartment 150 (e.g., depicted in FIG. 1A). The storage compartment 150 stores at least one side wall brush 204 when in the stored position. In other embodiments, the storage compartment 150 may store two or more sidewall brushes 204 when in the stored position. The sidewall brush 204 may comprise a flexible connection rod that allows the sidewall brush 204 to easily move from the stored position to the active position. In various embodiments, the storage compartment 150 may comprise an opening function that is configured to allow the sidewall brushes 204 to move from the retracted position to the active position. In various embodiments, the sidewall brushes 204 may automatically oscillate from the stored position to the retracted position upon the activation of at least one cycle and/or activation of the robotic device. In other embodiments, the activation of the cycle and/or activation of the robotic device may automatically extend the connection rods, such that, the user may secure the sidewall brushes to the connection rods.

FIG. 1D depicts an exemplary front view of a robotic device in accordance with various embodiments of the present disclosure. In various embodiments, the first sidewall brush 204A may be secured to the robotic device 10 via the first connection rod 202A and/or the second sidewall brush 204B may be secured to the robotic device 10 via the second connection rod 202B. The connection rods may extend laterally beyond the outermost edge of the robotic device 10. The connection rods 202 secures to the respective sidewall brush 204 via any need necessary (e.g., screws, bolts, nails, etc.). In other embodiments, the connection rod 202 are a protrusion of the sidewall brush, wherein the sidewall brush and the connection rod make an L shape. The connection between the sidewall brushes and the connection rods may allow the sidewall brushes to rotate in a plurality of directions, wherein the sidewall brushes may rotate horizontally to clean a surface and/or rotate vertically to move from the stored position to the active position. The connection rods may assist with the oscillation of the sidewall brushes along an opening of the robotic device, wherein the connection rods move horizontally relative to the opening as described in detail hereinafter.

FIG. 1E depicts an exemplary bottom view of a robotic device in accordance with various embodiments of the present disclosure. In accordance with various embodiments, the bottom surface of the robotic device may comprise one or more sensors 130A, one or more drive elements 124A, 124B, 124N, and/or one or more bottom brushes 310A, 310B (collectively ‘310’). In various embodiments, the robotic device may comprise one or more bottom brushes 310 configured to clean the bottom surface of a bathtub and/or shower. In one of more example embodiments, the robotic device 10 may comprise two or more bottom brushes 310. The robotic device may comprise a first bottom brush 310A disposed on a first half of the bottom surface of the robot and/or a second bottom brush 310B disposed a second half of the bottom surface of the robot. In various embodiments, the first bottom brush 310A and/or the second bottom brush 310B may be configured to oscillate in a clockwise direction and/or a counterclockwise direction. In other embodiments, the first bottom brush 310A and/or the second bottom brush 310B may be configured to complete full rotation either in the clockwise direction and/or the counterclockwise direction. In various embodiments, the first bottom brush 310A and/or the second bottom brush 310B may be configured oscillate and/or rotate in opposite directions of each other simultaneously (e.g., first bottom brush 310A oscillates and/or rotate in the clockwise direction and/or second bottom brush oscillates and/or rotates in the counterclockwise direction). In other embodiments, the first bottom brush 310A and the second bottom brush may be configured to oscillate and/or rotate in the same direction. In various embodiments, the one or more bottom brushes 310 may be configured to be removable from the robotic device for cleaning of the brush and/or replacing the brush.

With further reference to FIG. 1E, the robotic device may comprise two or more drive elements (e.g., wheels, tracks, belts etc.). In various embodiments, a first drive element 124A and a second drive element 124B may be disposed linearly opposite of each other. In some embodiments, the robotic device 10 may further comprise one or more additional drive element 124N configured to assist with the movement of the robotic device. The drive elements 124 may be driven by one or more motors and/or may be configured to rotate independently from each other, such that, the robotic device is configured to turn within the cleaning environment (e.g., bathtub and/or shower). In various embodiments, the drive elements 124 may configure the robotic device 10 to move in a plurality of directions (e.g., forwards, backwards, right, left, etc.) simultaneously and/or individually. In one or more example embodiments, the robotic device 10 may comprise four or more drive elements 124, wherein at least two drive elements 124A on a first side and at least two drive elements 124B on a second side. In the depicted embodiments, the robotic device 10 may comprise two drive elements 124A, 124B disposed towards the rear of the of the system an at least one drive element 124N disposed between the bottom brushes and towards the front of the system.

FIG. 2 depicts an exemplary cross-sectional view of a robotic device depicting a drive mechanism and cleaning mechanism in accordance with various embodiments of the present disclosure. In various embodiments, a drive mechanism may comprise at least one battery 120, at least one motor 122, and/or at least one drive element 124. In various embodiments, the drive elements 124 may be wheels, tacks, belts, and/or the like configured to engage with the bottom surface of the cleaning environment (e.g., bathtub and/or shower). In various embodiments, the drive mechanism may comprise at least one drive element 124A disposed on a first side and at least one drive element 124B disposed on a second side. In other embodiments, the drive mechanism may comprise two or more drive elements 124A on the first side and two or more drive elements 124B on the second side. The drive mechanism may comprise further at least one motor 122 configured to activate the one or more drive elements. The motors 122 may be electrically connected to the at least one battery 120, wherein the battery may be a rechargeable battery. The battery 120 may be configured to conduct electrical current to the motors 122 when a user activates a cleaning cycle. In various embodiments, the robotic device may comprise a plurality of motors, wherein a first motor 122A may be configured to drive a first set of drive elements 124A and a second motor 122B may be configured to drive a second set of drive elements 124B. The first motor 122A and/or the second motor 122B may be configured to drive the corresponding drive elements 124A, 124B simultaneously and/or separately.

With further reference to FIG. 2 , in various embodiments, a robotic device 10 may further comprise a cleaning mechanism configured to supply one or more brushes with cleaning solution and/or water. In various embodiments, the cleaning mechanism may comprise at least one water reservoir 140, at least one fill spout 142, and/or at least one cleaning solution reservoir 144. In various embodiments, the at least one water reservoir 140 may be connected to the at least one fill spout 142, wherein a user may be able refill the water reservoir 140 without removing the reservoir from the cleaning system by adding additional water to the fill spout 142. In other embodiments, the water reservoir 140 may be configured to be removable from the robotic device 10, wherein the user can fill the water reservoir via the fill spout 142 and/or directly. In various embodiments, the cleaning mechanism further comprises one or more additional fill spouts (e.g., not depicted). The one or more additional fill spouts may be configured to connect to the at least one cleaning solution reservoir 144. In various embodiments, both the water reservoir and/or cleaning solution reservoir may further comprise connection channels connected to one or more sidewall brushes and/or one or more bottom brushes. The water reservoir 140 and/or the cleaning solution reservoir 144 may be configured to supply the one or more brushes with the appropriate amount of liquids based on a selected cleaning cycle. In various embodiments, the water reservoir 140 and/or the cleaning solution reservoir 144 may be configured to supply one or more brushes with the corresponding liquids simultaneously. In other embodiments, the water reservoir 140 and/or the cleaning solution reservoir 144 may be configured to supply one or more brushes with the corresponding liquids separately.

With even further reference to FIG. 2 , in various embodiments, a robotic device may further comprise one or more sensors. In various embodiments, the one or more sensors 130B may be a locational sensor, a vision sensor, a communication sensor, light detection and ranging sensor (Lidar) and/or the like. In various embodiments, the one or more sensors may be a locational sensors 130B, such that, the locational sensor may be configured to track the location of the robotic device 10 and/or the traveled path of the robotic device 10 within a cleaning environment. The one or more locational sensors may be a RFID tag, NFC tags, Bluetooth beacons, GPS receivers, Wi-Fi transceivers, and/or the like. The one or more locational sensors 130B may be active trackers (e.g., GPS receivers, Wi-Fi transceivers, accelerometer, etc.) capable of generating signals and/or data for transmitting and/or receiving data to/from a controller and/or user device. For example, the locational sensor 130B (e.g., depict in FIG. 1D) may include, but are not limited to, RFID tags, NFC tags, Bluetooth beacons, GPS receivers, Wi-Fi transceivers, and/or the like configured to emit a signal, whether passively (e.g., via radio interrogation, such as RFID) or actively (e.g., via active signal generation and transmission, such as Bluetooth), detectable by a computing device for determining the location of the robotic device 10. In various embodiments, the robotic device 10 may further comprise at least one vision sensor (e.g., not depicted). In various embodiments, one or more vision sensor may be a 2-D camera, a 3-D camera, and/or the like. The one or more vision sensor may be configured to determine the location of the robotic device 10 using vision data gathered.

FIGS. 3A-3B depict example perspective views of portions of at least one bottom brush in accordance with various embodiment of the present disclosure. In various embodiments, as depicted in FIG. 3A, the one or more bottom brushes 310 may comprise of a plurality of bristles 320. The plurality of bristles 320 may be configured to contact the bottom surface 1000 of a cleaning environment (e.g., tub and/or shower). The plurality of bristles 320 may be further configured to flex and/or bend during oscillations and/or rotation of the corresponding bottom brush. In various embodiments, the plurality of bristles 320 may be further configured to receive water and/or cleaning solution from the water reservoir and/or from the cleaning solution reservoir to assist in the cleaning of the bottom surface 1000 of the tub and/or shower. In one or more embodiments, the plurality of bristles 320 may be configured to be at least a portion of the first bottom brush 310A and/or the second bottom brush 310B.

With reference to FIG. 3A, in various embodiments, a plurality of bristles 320 may be configured to contact the bottom surface 1000 of the cleaning environment (e.g., tub and/or shower). In various embodiments, the plurality of bristles may be flexible and/or are configured to bend at least in part upon rotation. In various embodiments, the plurality of bristles 320 may be configured to receive cleaning solution and/or water from the corresponding reservoirs, wherein the plurality of bristles 320 may be configured deliver the cleaning solution and/or water to the bottom surface 1000 of the bathtub and/or shower.

With reference to FIG. 3B, a rotating and oscillating mechanism 330 may be depicted in accordance with various embodiments of the present disclosure. In various embodiments, the rotating and oscillating mechanism may comprise at least one gear 332, at least one motor 334, and/or at least one rotating shaft. The at least one motor 334 may be configured to engage with the at least one rotation shaft 336, wherein the motor 334 may be configured to cause the shaft to rotate. In various embodiments, the rotating shaft may be further configured to engage with the at least one gear 332. The gear 332 may be configured to engage with and/or assist in rotating and/or oscillating one or more bottom brushes 310 and/or one or more side wall brushes 204. The motor 334 of the rotating and oscillating mechanism 330 may be configured to activate simultaneously and/or separately from the activation of a cycle of the robotic device 10. In various embodiments, the rotating and oscillating mechanism 330 may oscillate the sidewall brushes along the opening of the robotic device. The rotating shaft oscillates the sidewall brushes from the respective first linear position at the first end of the robotic device to the second linear position at the second position of the robotic device. The rotating and oscillating mechanism may further cause the sidewall brushes to simultaneously rotate while oscillating along the opening of the robotic device.

FIG. 4 is a schematic representation of example components in an example controller in accordance with various aspects of the present disclosure.

FIG. 4 shows a schematic block diagram of an example circuitry, some or all of which may be included in controller 400. In accordance with some example embodiments, circuitry may include various means, such as processor 410, communication element 420, input/output element 430, and/or memory 440. In some embodiments, such as when circuitry is included in controller 400. Although these components (e.g., processor 410, memory 440, etc.) are described with respect to functional limitations, it should be understood that the particular implementations necessarily include the use of particular hardware, software, and/or firmware. It should also be understood that certain of these components (e.g., processor 410, memory 440, etc.) may include similar or common hardware. For example, multiple sets of circuitry may both leverage use of the same processor, network interface, storage medium, or the like to perform their associated functions, such that duplicate hardware is not required for each set of circuitry.

The term “circuitry” should also be understood, in some embodiments, to include software for configuring the hardware. For example, in some embodiments, “circuitry” may include processing circuitry, storage media, network interfaces, input/output devices, and the like. In some embodiments, such as in examples where circuitry is included with controller 400 may provide or supplement the functionality of particular circuitry. For example, the processor 410 may provide processing functionality, the memory 440 may provide storage functionality, the communications element 420 may provide network interface functionality, and the like.

In some embodiments, the controller component 400 can be or comprise a printed circuited board (PCB). In some examples, the controller component 400 (e.g., PCB) can further comprise one or more of a full bridge motor driver, a sensor, one or more thermal sensors, one or more user interfaces, one or more protection circuits, configuration management circuitry, a wireless interface, sensing element circuitry (e.g., image sensor circuitry), an interface connector, power control circuitry, gate driver circuitry and/or the like.

The processing circuitry 410 can be embodied as means including one or more microprocessors with accompanying digital signal processor(s), one or more processor(s) without an accompanying digital signal processor, one or more coprocessors, one or more multi-core processors, one or more controllers, processing circuitry, one or more computers, various other processing elements including integrated circuits such as, but not limited to, an application specific integrated circuit (ASIC) or field programmable gate array (FPGA), or some combination thereof. Accordingly, although illustrated in FIG. 4 as a single processor, in an embodiment, the processing circuitry 410 can include a plurality of processors and signal processing modules. The plurality of processors can be embodied on a single electronic device or can be distributed across a plurality of electronic devices collectively configured to function as the circuitry of the robotic system 402. The plurality of processors can be in operative communication with each other and can be collectively configured to perform one or more functionalities of the circuitry of the robotic system as described herein. In an example embodiment, the processing circuitry 410 can be configured to execute instructions stored in the memory 440 or otherwise accessible to the processing circuitry 410. These instructions, when executed by the processing circuitry 410, can cause the circuitry of the robotic system 402 to perform one or more of the functionalities, as described herein.

In various embodiments, the controller 400 may be configured to communicate with a robotic system 402 via wireless external communication networks using any of a variety of protocols, such as embedded sim (eSIM), remote sim provisioning (RSP), general packet radio service (GPRS), Universal Mobile Telecommunications System (UMTS), Code Division Multiple Access 200 (CDMA200), CDMA200 1× (1×RTT), Wideband Code Division Multiple Access (WCDMA), Global System for Mobile Communications (GSM), Enhanced Data rates for GSM Evolution (EDGE), Time Division-Synchronous Code Division Multiple Access (TD-SCDMA), Long Term Evolution (LTE), Evolved Universal Terrestrial Radio Access Network (E-UTRAN), Evolution-Data Optimized (EVDO), High Speed Packet Access (HSPA), High-Speed Downlink Packet Access (HSDPA), IEEE 802.11 (Wi-Fi), Wi-Fi Direct, 802.16 (WiMAX), ultra-wideband (UWB), IR protocols, NFC protocols, RFID protocols, IR protocols, ZigBee protocols, Z-Wave protocols, 6LoWPAN protocols, Wibree, Bluetooth protocols, wireless universal serial bus (USB) protocols, and/or any other wireless protocol.

In one or more embodiments, the controller 400 may be configured to communicate via one or more communication elements 420, wherein the controller 400 may be configured to transmit operation instructions to one or more components of the robotic systems. In various embodiments, the controller 400 may be configured to communicate with the robotic system 402, wherein the controller may be configured to communicate with one or more sensors of the robotic system 402 configured to detect the location of the robotic system within the surrounding environment.

Whether configured by hardware, firmware/software methods, or by a combination thereof, the processing circuitry 410 can include an entity capable of performing operations according to embodiments of the present disclosure while configured accordingly. Thus, for example, when the processing circuitry 410 is embodied as an ASIC, FPGA or the like, the processing circuitry 410 can include specifically configured hardware for conducting one or more operations described herein. Additionally, or alternatively, when the processing circuitry 410 is embodied as an executor of instructions, such as can be stored in the memory 440, the instructions can specifically configure the processing circuitry 410 to perform one or more algorithms and operations described herein.

Thus, the processing circuitry 410 used herein can refer to a programmable microprocessor, microcomputer or multiple processor chip or chips that can be configured by software instructions (applications) to perform a variety of functions, including the functions of the various embodiments described above. In some devices, multiple processors can be provided dedicated to wireless communication functions and one processor dedicated to running other applications. Software applications can be stored in the internal memory before they are accessed and loaded into the processors. The processors can include internal memory sufficient to store the application software instructions. In many devices, the internal memory can be a volatile or nonvolatile memory, such as flash memory, or a combination thereof. The memory can also be located internal to another computing resource (e.g., enabling computer readable instructions to be downloaded over the Internet or another wired or wireless connection.

The memory 440 can include suitable logic, circuitry, and/or interfaces that are adapted to store a set of instructions that is executable by the processing circuitry 410 to perform predetermined operations. Additionally, or alternately, the memory 440 can be configured to store data/information, application programs, instructions, etc., so that the controller component 400 can execute various functions according to the embodiments of the present disclosure. For example, in at least some embodiments, the memory 440 is configured to cache input data for processing by the processing circuitry 410. Thus, in at least some embodiments, the memory 440 is configured to store program instructions for execution by the processing circuitry 410. The memory 440 can store information in the form of static and/or dynamic information. When the functions are executed, the stored information can be stored and/or used by the controller component 400. Example memory embodiments can include, but are not limited to, a hard disk, random access memory, cache memory, read only memory (ROM), erasable programmable read-only memory (EPROM) & electrically erasable programmable read-only memory (EEPROM), flash memory, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, a compact disc read only memory (CD-ROM), digital versatile disc read only memory (DVD-ROM), an optical disc, circuitry configured to store information, or some combination thereof. In an example embodiment, the memory 440 can be integrated with the processing circuitry 410 on a single chip, without departing from the scope of the disclosure.

The communication element 420 can be implemented as any apparatus included in a circuit, hardware, a computer program product, or a combination thereof, which is configured to receive and/or transmit data from/to another component or apparatus. The computer program product comprises computer-readable program instructions stored on a computer-readable medium (for example, the memory 440) and executed by a processor 410 (for example, the processing circuitry 410). In some embodiments, the communication element 420 (as with other components discussed herein) can be at least partially implemented as the processing circuitry 410 or otherwise controlled by the processing circuitry 410. In this regard, the communication element 420 can communicate with the processing circuitry 410, for example, through a bus. The communication element 420 can comprise, for example, antennas, transmitters, receivers, transceivers, network interface cards and/or supporting hardware and/or firmware/software and is used for establishing communication with another apparatus. The communication element 420 can be configured to receive and/or transmit any data that can be stored by the memory 440 by using any protocol that can be used for communication between apparatuses. The communication element 420 can additionally or alternatively communicate with the memory 440, the input/output element 430 and/or any other component of the processor 410, for example, through a bus.

In some embodiments, the controller 400 can comprise an input/output element 430. The input/output element 430 can communicate with the processing circuitry 410 to receive instructions input by the user and/or to provide audible, visual, mechanical, or other outputs to the user. Therefore, the input/output element 430 can comprise supporting devices, such as a keyboard, a mouse, a display, a touch screen display, microphone, audio recorder, speaker, biometric scanner, and/or other input/output mechanisms. In various embodiments, the robotic system 402 may be activated by a voice command, wherein the input/output element 430 receives the instructions and communicates the instructions to the processing circuitry 410. Alternatively, at least some aspects of the input/output element 430 can be implemented on a device used by the user to communicate with the controller 400. The input/output element 430 can communicate with the memory 440, the communication element 420 and/or any other component, for example, through a bus. One or a plurality of input/output modules and/or other components can be included in the controller 400.

In various embodiments, the input/output element 430 may communicate with one or more electronic devices (e.g., user phone, tablet, computer, etc.) to receive one or more instructions and/or commands. The instructions and/or command may determine the cycle type and/or run time of the robotic system. The input/output element 430 may further relay messages (e.g., status updates, etc.) from the controller 400 to the electronic devices. In various embodiments, the controller may be executed the received instructions and/or commands via the processing circuitry 410 and/or memory 440. The processing circuitry 410 and/or memory 440 may cause the robotic device to complete at least one cycle and/or operate for a predetermined amount of time.

As described above and as will be appreciated based on this disclosure, embodiments of the present disclosure may be configured as systems, methods, apparatuses, computing devices, personal computers, servers, mobile devices, backend network devices, and the like. Accordingly, embodiments may comprise various means including entirely of hardware or any combination of software and hardware. Furthermore, embodiments may take the form of a computer program product on at least one non-transitory computer-readable storage medium having computer-readable program instructions embodied in the computer-readable storage medium (e.g., computer software stored on a hardware device). Any suitable computer-readable storage medium may be utilized including non-transitory hard disks, CD-ROMs, flash memory, optical storage devices, or magnetic storage devices.

As will be appreciated, any such computer program instructions and/or other type of code may be loaded onto a computer, processor or other programmable apparatus's circuitry to produce a machine, such that the computer, processor, or other programmable circuitry that execute the code on the machine creates the means for implementing various functions, including those described herein in connection with the components of circuitry.

In various embodiments, the controller 400 may be configured to control the location of the robotic device, control the cycle type of the robotic device, control the cycle time of the robotic device, control the location of the robotic device, etc. In various embodiments, the controller 400 may be further configured to collect location data regarding the location of the robotic device, collect path data of the robotic device, cleaning data of the robotic device, and/or the like.

FIG. 5 shows a schematic block diagram of an exemplary circuitry. Some or all of which may be included in a user device 500, in accordance with some example embodiments circuitry may include various means such as processor 501, memory 502, input/output circuitry 503, and/or communications circuitry 504.

In some embodiments, the processor 501 (and/or coprocessor or any other processing circuitry assisting or otherwise associated with the processor) may be in communication with the memory 502 via a bus for passing information among components of, for example, a user device 500. The memory 502 is non transitory and may include, for example, one or more volatile and/or non-volatile memories or some combination thereof. In other words, for example, the memory 502, may be a storage device (e.g., a computer readable storage medium). The memory 502 may be configured to store information, data, content application instruction and/or the like for enabling an apparatus (e.g., user device 500) to carry out various functions in accordance with example embodiments of the present disclosure. Although illustrated in FIG. 5 as a single memory, memory 502 may comprise a plurality of memory components. The plurality of memory components may be embodied on a single computing device or distributed across a plurality of user devices. In various embodiments, memory 502 may comprise, for example, a hard disk, random access memory, cache memory, flash memory, a compact disk, read only memory (CD-ROM), digital versatile disk read only memory (DVD-ROM), an optical disk, circuitry configured to store information, or some combination thereof.

Memory 502 may be configured to store information, data, application instructions and/or the like for enabling circuitry to carry out various function in accordance with example embodiments discussed herein. In an example embodiment, processor 501 is configured to execute instructions stored in the memory 502 or otherwise accessible to the processor 501. Alternatively or additionally, the processor 501 may be configured to execute hard coded functionalities. As such, whether configured by hardware or software methods or by a combination thereof, the processor 501, may represent an entity (e.g., physically embodied in circuitry) capable of performing operations according to an embodiment of the present disclosure. Alternatively, as in another example, when the processor 501 is embodied as an executor of software instructions, the instructions may specifically configure processor 501 to perform one or more algorithms and/or operations described herein when the instructions are executed. For example, these instructions when executed by processor 501 may cause user device 500 to perform one or more functionalities of a user device as described herein. In some embodiments, input/output circuitry 503 may in turn be in communication with processor 501 to provide an audible, visual, mechanical or other output and/or in some embodiments to receive an indication of input.

Input/output circuitry 503 may include means for performing analog to digital and/or digital to analog data conversion. Input/output circuitry 503 may include support, for example, for a display, touch screen, keyboard, button, click wheel, mouse, joystick, an image capturing device (e.g., a camera), motion sensor (e.g., accelerometer and/or gyroscope), microphone, audio recorder, speaker, biometric scanner and/or other input/output mechanisms. Input/output circuitry 503 may comprise a user interface (e.g., a teamwork user interface, an interactive team assessment interface, a team health metrics dashboard, etc.) and may comprise a web-user interface, a mobile application, a kiosk and/or the like. The processor 501 and/or other interface circuitry comprising the processor 501 may be configured to control one or more functions of a display or one or more user interface elements through computer program instruction (e.g., software and/or firmware) stored on a memory accessible to the processor 501 (e.g., memory 502, and/or the like).

In various embodiments, a user may use the input/output circuitry 503 to send one or more instructions and/or commands to the robotic system. The instructions and/or commands may comprise information regarding the selection of a cycle type and/or a run time for the robotic system. In various embodiments, the input/output circuitry 503 may be further configured to power on and/or off the robotic system.

Communications circuitry 504 may be any means such as a device or circuitry embodied in either hardware or a combination of hardware and software that is configured to receive and/or transmit data from/to a network and/or any other device, circuitry or module in communication with circuitry (e.g., user device 500). In this regard, the communications circuitry 504 may include, for example, a network interface for enabling communication with a wired or wireless communication network. Communications circuitry 504 may be configured to receive and/or transmit any data that may be stored by memory 502 using protocols that may be used for communication between computing devices. For example, the communications circuitry 504 may include one or more network interface cards, antenna, transmitter, receiver, buses, switches, routers, modems and supporting hardware and/or software, and/or firmware/software, or any other device suitable for enabling communications via network. Additionally or alternatively, the communication interface may include the circuitry for interacting with the antenna to cause transmission of signal via the antenna or to handle receipt of signals received via the antenna. These signals may be transmitted by circuitry using any of a number of wireless, personal area networks (PAN) technology, such as Bluetooth V 1.0 though V 3.0, Bluetooth low energy (BLE), inferred wireless (e.g., IRDA), ultra-wide band (UWB), induction wireless transmission, and/or the like. In addition, it should be understood that these signals may be transmitted using Wi-Fi, Near Field communications (NFC), world-wide interoperability for microwave access (WiMAX), and/or other proximity-based communications protocols. Communications circuitry 504 may additionally or alternatively be in communication with the memory 502, input/output circuitry 503 and or any other component of the circuitry via a bus.

FIG. 6 depicts an exemplary communications network allowing for communication between a robotic device and one or more user devices.

Robotic device 10 can communicate with one or more user devices 500 via a communication network 600. Communication network 600 may include any one or more wired and/or wireless communication networks including, for example, a wired or wireless local area network (LAN), personal area network (PAN), metropolitan area network (MAN), wide area network (WAN), or the like, as well as any hardware, software, and/or firmware requires for implementing the one or more networks (e.g., network routers, switches, hubs, etc.). For example, communications network 600 may include a cellular telephone, mobile broadband, long term evolution (LTE), GSM/EDGE, UMTS/HSPA, IEEE 802.11, IEEE 802.16, IEEE 802.20, Wi-Fi, dial-up, Bluetooth, and/or WiMAX network. Furthermore, the communications network 600 may include a public network, such as the Internet, a private network, such as an intranet, or combination thereof, and may utilize a variety of networking protocols now available or later developed including, but not limited to TCP/IP based networking protocols. For instance, the networking protocol may be customized to suit the needs of the robotic device 10.

With further reference to FIG. 6 , in various embodiments, one or more user devices 500 may be configured to transmit instructions to the robotic device 10 via the communication network 600. The one or more user devices 500 may be configured to transmit instruction via Wi-Fi, Bluetooth, etc. to the robotic system. In various embodiments, the one or more instruction may comprise a cleaning cycle, mapping a cleaning surface, and/or the like. The communication element 420 may be configured to connect to the communication network 600 and/or receive the instructions from the user device 500. In other embodiments, at least one user device 500 may be configured to connect directly to the robotic device 10.

Many modifications and other embodiments of the present disclosure set forth herein will come to mind to one skilled in the art to which these embodiments pertain having the benefit of the teachings presented in the foregoing descriptions and the associated drawings. Therefore, it is to be understood that the disclosure is not to be limited to the specific embodiments disclosed and that modifications and other embodiments are intended to be included within the scope of the appended claims. Moreover, although the foregoing descriptions and the associated drawings describe example embodiments in the context of certain example combinations of elements and/or functions, it should be appreciated that different combinations of elements and/or functions can be provided by alternative embodiments without departing from the scope of the appended claims. In this regard, for example, different combinations of elements and/or functions than those explicitly described above are also contemplated as can be set forth in some of the appended claims. Although specific terms are employed herein, they are used in a generic and descriptive sense only and not for purposes of limitation. 

1. A robotic device for cleaning a surrounding environment, the robotic device comprising: a body portion that defines at least a top surface, a bottom surface, and a continuous sidewall surfaces, wherein the sidewall surface is defined by a perimeter of the body portion; a drive system that includes at least two drive elements configured to propel the robotic device within the surrounding environment, wherein the at least two drive elements extend a distance beneath the bottom surface; two or more bottom brushes having a primary axis of each brush that extends below the bottom surface and extend at least partially beyond the at least two drive elements to engage the surrounding environment; a continuous opening that translates around the sidewall surface; and a pair of sidewall brushes that extend from the robotic cleaning device and configured to oscillate along the continuous opening until making contact with each other.
 2. The robotic device of claim 1, further comprising a storage compartment that stores the pair of sidewall brushes, wherein the storage compartment is defined between the top surface and the bottom surface at an end of the robotic device.
 3. The robotic device of claim 2, wherein the pair of sidewall brushes translates from a stored position to an active position relative to the storage compartment upon an activation of a cycle.
 4. The robotic device of claim 3, wherein the pair of sidewall brushes are position in a vertical manner relative to the storage compartment while in the active position.
 5. The robotic device of claim 4, wherein the pair of sidewall brushes oscillate horizontally relative to the continuous opening of the robotic device.
 6. The robotic device of claim 5, wherein the pair of sidewall brushes oscillate individually from each other from a first linear position to a second linear position along the continuous opening.
 7. The robotic device of claim 6, wherein a first sidewall brush oscillates along a first side of the robotic device, and a second sidewall brush oscillates along a second side of the robotic device, wherein the first side and the second side are relative to the sidewall surface.
 8. The robotic device of claim 6, wherein the first linear position is defined by the storage compartment at a first end of the robotic device.
 9. The robotic device of claim 7, wherein the second linear position is defined by a linearly opposite end of the robotic device relative to the storage compartment.
 10. The robotic device of claim 1, further comprises a bumper that extends around the body portion, wherein the bumper protects a finish of the surrounding environment.
 11. The robotic device of claim 1, further comprises a controller and at least one sensor to detect a location of the robotic device in the surrounding environment and communicate the location to guide the robotic device.
 12. The robotic device of claim 11, wherein the controller further comprises a processor configured to communicate with the controller of the robotic device.
 13. The robotic device of claim 12, wherein the controller, directed by the processor, controls at least one oscillating function of the pair of sidewall brushes.
 14. The robotic device of claim 11, wherein the controller further comprises a communication element that communicates with at least one electronic device.
 15. The robotic device of claim 1, further comprising at least one power switch, wherein the at least one power switch activates the robotic device and/or selects a cycle type.
 16. A system comprising: a robotic device, wherein the robotic device comprises: a body portion that defines at least a top surface, a bottom surface, and a continuous sidewall surfaces, wherein the sidewall surface is defined by a perimeter of the body portion; a drive system that includes at least two drive elements configured to propel the robotic device within a surrounding environment, wherein the at least two drive elements extend a distance beneath the bottom surface; two or more bottom brushes having a primary axis of each brush that extends below the bottom surface and extend at least partially beyond the at least two drive elements to engage the surrounding environment; a continuous opening that translates around the sidewall surface; a pair of sidewall brushes that extend from the robotic cleaning device and configured to oscillate along the continuous opening until making contact with each other; and a distributed network, wherein the distributed network communicates with one or more electronic devices and with the system.
 17. A method of operating a robotic device, the method comprising the steps of: selecting, via a power switch, a power type and/or cycle type; and causing an activation of a cycle for the robotic device to begin cleaning a surrounding environment, wherein the robotic device comprises: a body portion that defines at least a top surface, a bottom surface, and a continuous sidewall surfaces, wherein the sidewall surface is defined by a perimeter of the body portion; a drive system that includes at least two drive elements configured to propel the robotic device within the surrounding environment, wherein the at least two drive elements extend a distance beneath the bottom surface; two or more bottom brushes having a primary axis of each brush that extends below the bottom surface and extend at least partially beyond the at least two drive elements to engage the surrounding environment; a continuous opening that translates around the sidewall surface; a pair of sidewall brushes that extend from the robotic cleaning device and configured to oscillate along the continuous opening until making contact with each other; and at least one power switch, wherein the at least one power switch activates the robotic device and/or selects a cycle type.
 18. The method of operating a robotic device of claim 17, wherein the cycle type defines a running time of the robotic device and a cleaning type.
 19. The method of operating a robotic device of claim 18, wherein depressing the at least one power switches a predetermined number of times results in selecting the cycle.
 20. The method of operating a robotic device of claim 19, wherein selecting different cycles and/or run times are based on a number of depressions of the at least one power switch. 